package com.zy.explore.strategy.infrastructure.enums;

import lombok.Getter;
import lombok.Setter;

/**
 * description VIP类型枚举
 *
 * 普通会员、白银会员、黄金会员、白金会员
 *
 * @author 🇨🇳中国印🇨🇳
 * @date 2021年07月03日 01:09
 */
@Getter
public enum VipTypeEnum {
    /** 普通会员 */
    NORMAL_VIP("normal_vip", "普通会员"),
    /** 白银会员 */
    SILVER_VIP("silver_vip", "白银会员"),
    /** 黄金会员 */
    GOLD_VIP("gold_vip", "黄金会员"),
    /** 白金会员 */
    PLATINUM_VIP("platinum_vip", "白金会员"),

    ;

    private final String vipType;

    private String vipDesc;

    VipTypeEnum(String vipType, String vipDesc) {
        this.vipType = vipType;
        this.vipDesc = vipDesc;
    }

    /**
     * 根据VIP类型查询VIP枚举对象
     *
     * @param vipType vip类型
     * @return {@link VipTypeEnum}
     */
    public static VipTypeEnum getVipByType(String vipType) {
        for (VipTypeEnum vte : VipTypeEnum.values()) {
            if (vte.vipType.equals(vipType)) {
                return vte;
            }
        }
        return null;
    }

    /**
     * 获取枚举对象的类型
     *
     * @return {@link String}
     */
    public String getVipType() {
        return vipType;
    }

    /**
     * 获取枚举对象的描述
     *
     * @return {@link String}
     */
    public String getVipDesc() {
        return vipDesc;
    }

}
